In communication, intersymbol interference (ISI) is a form of distortion of a signal in which one symbol interferes with one or more subsequent symbols. This is an unwanted phenomenon, as the previous symbols have similar effect as noise, thus making the communication less reliable. ISI is usually caused by multipath propagation or the inherent non-linear frequency response of a channel, causing successive symbols to blur together.
Adaptive equalizers are often used to at least in part mitigate effects of ISI. Decision feedback equalizer (DFE) is an example of an adaptive equalizer. FIG. 1 schematically illustrates a conventional DFE 100 for mitigating effects of ISI in a signal received over a communication channel. The DFE 100 receives a signal 102. The signal 102, for example, is received by an antenna (not illustrated in FIG. 1) over a wireless communication channel (not illustrated in FIG. 1) and appropriately pre-processed (e.g., using a pre-filter, not illustrated in FIG. 1), prior to the DFE 100 receiving the signal 102.
The DFE 100 comprises a decision module 104 configured to receive the signal 102, after the signal 102 has been processed by a feedback module 116. In an example, the signal 102 comprises a plurality of symbols, where each symbol represents one or more bits. For example, the signal 102 comprises a stream of symbols . . . , Sa, Sb, . . . , Sk, S(k+1), . . . , and so on, received in that order (e.g., symbol S(k+1) is received subsequent to receiving the symbol Sk, symbol Sb is received subsequent to receiving the symbol Sa, and so on). The decision module 104 estimates a value of each symbol in the signal 102, represented as decision 118 in FIG. 1.
As previously discussed herein, because of ISI, a symbol can have effect on one or more subsequent symbols. To mitigate the effects of ISI, the DFE 100 comprises feedback filter 108 configured to receive the decision 118, and output a feedback signal 114 (also referred to herein as “feedback 114”). The feedback module 116 receives the signal 102 and the feedback 114. The feedback module 116, for example, subtracts the feedback 114 from the signal 102 to generate an output, and the output of the feedback module 116 is received by the decision module 104. In an example, the feedback 114 represents effects of one or more previous symbols on the current symbol being processed by the decision module 104 (e.g., represents estimated inter symbol interferences of one or more previous symbols on the current symbol).
In an example, the feedback filter 108 comprises a plurality of delay modules 110a, 110b, . . . , 110k, a corresponding plurality of multipliers 112a, . . . , 112k, and an adder 120. The delay module 110k receives the decision 118, delays the decision 118 by a single delay cycle, and transmits the delayed decision to the subsequent delay module 110(k−1), which performs similar operation, as illustrated in FIG. 1. The outputs of the delay modules 110a, 110b, . . . , 110k are respectively received by the multipliers 112a, 112b, . . . , 112k. The multipliers 112a, 112b, . . . , 112k respectively multiple the respective input signals with weights wa, wb, . . . , wk. The outputs from the multipliers 112a, 112b, . . . , 112k are added in the adder 120, which generated the feedback 114.
In an example, due to the delay provided by the delay modules 110a, . . . , 110k, if symbol S(K+1) is currently being processed by the decision module 104, then: the delay module 110k outputs the decision for the symbol Sk; the delay module 110b outputs the decision for the symbol Sb; the delay module 110a outputs the decision for the symbol Sa; and so on. Thus, the decisions for the symbols Sa, . . . , Sk are respectively multiplied by multipliers wa, . . . , wk, and added to form the feedback 114. A weight (e.g., the weight wa) is calibrated such that the output of the corresponding multiplier (e.g., the multiplier 112a) represents an estimated effect of the corresponding symbol Sa on the symbol S(k+1) currently being processed by the decision module 104. Thus, the feedback 114 represents the cumulative or total effects (e.g., total ISI) of the symbols Sa, . . . , Sk on the current symbol S(k+1). In an example, the number of previous symbols considered in the DFE 100 (e.g., the number of the multipliers 112a, . . . , 112k) is based on a desired accuracy of the DFE 100, and can be any appropriate number.
In an example, in the DFE 100, the decisions corresponding to the signals Sa, . . . , Sk affect the decision corresponding to the symbol S(k+1) taken by the decision module 104. Assume, for example, that the decision by the decision module 104 corresponding to the symbol Sb is erroneous (e.g., the symbol Sb has a value of 1, although the decision module 104 erroneously decides that the value of the symbol Sb is 0). Such an erroneous decision of the symbol Sb will propagate to the decisions of subsequent symbols as well. For example, as the decision of the symbol Sb directly affects the decision for the symbols Sc, . . . , S(k+1) (and indirectly affects decision of subsequent symbols as well), an erroneous decision for the symbol Sb will propagate and negatively impact the decisions of various other subsequent symbols, and has a cascading effect.